The present invention relates to the field of network devices in general and in particular to establishing and maintaining communications between network devices in a transparent manner.
Data communications networks, such as local area networks (LANs) and wide area networks (WANs) often include a variety of network devices for sending, receiving, directing, and optimizing network data traffic. Examples of common network devices include routers, switches, storage-area network front-ends and interfaces, network-address translation (NAT) and firewall devices, and wireless network devices such as access points, bridges, and repeaters. More specialized network devices include standalone print-servers, streaming video and music servers, logging and network management devices, and network monitoring and traffic inspection devices.
WAN optimization devices are another type of network device. WAN optimization devices optimize network traffic to improve network performance in reading and/or writing data over a WAN. WAN optimization devices often operate in pairs on both sides of a WAN or other slower network connection to compress, prefetch, cache, and otherwise optimize network traffic. For example, a WAN optimization device may intercept network traffic on a first LAN from a source network device; compress, prefetch, cache, and otherwise optimize this network traffic; and communicate this optimized network traffic over the WAN to a second WAN optimization device. The second WAN optimization device then decompresses or otherwise processes the optimized network traffic to reconstruct the original network traffic. The second WAN optimization device then communicates the reconstructed version of the original network traffic to the destination network device via a second LAN.
Often, it is desirable for network devices such as WAN optimization devices to operate transparently to other client and server computer systems and network devices. In general, a network device such as a WAN optimization device is considered transparent if any intervening network device, referred to as a middle device, cannot distinguish network traffic between transparent devices from any client-server network traffic associated with the same network connection.
When WAN optimization devices operate transparently, the network connections between a source network device and the first WAN accelerator and between a destination network device and the second WAN accelerator appear to these network devices as a single logical end-to-end connection. These two network connections are referred to collectively as an “outer connection.” The network connection between two WAN optimization devices that is used to communicate optimized network traffic is referred to as an “inner connection.”
Although inner connections may be created by manually created by configuring WAN optimization devices, it is desirable for WAN optimization devices to automatically establish inner connections as needed. To automatically establish an inner connection between WAN optimization devices, a WAN optimization device first needs to determine if one or more counterpart WAN optimization devices exists on the other side of the WAN network and, if so, to determine its network address.
However, this automatic discovery of WAN optimization devices is complicated because WAN optimization devices operate transparently. For bidirectional network protocols such as TCP, transparent WAN optimization devices may add flags or other indicators to network traffic to signal their existence, network addresses, and other information to any other downstream transparent WAN optimization devices. Transparent WAN optimization devices that receive network traffic including these flags or indicators may add their own flags or indicators to the return network traffic. Because the network protocol is bidirectional, there will always be return network traffic that a transparent WAN optimization device may use to respond to the upstream WAN optimization device. By adding flags or indicators to bidirectional network traffic, transparent WAN optimization devices can detect each others existence and exchange information to establish an inner connection.
However, some network protocols, such as UDP, are unidirectional. For unidirectional network protocols, there may not be any return network traffic. Thus, a transparent WAN optimization device that intercepts unidirectional network traffic including a flag or indicator from an upstream transparent WAN optimization device cannot respond using return network traffic.